package com.hjxr.xmgl.web.domain;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.hjxr.framework.aspectj.lang.annotation.Excel;
import com.hjxr.sysadmin.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 可行性研究报告对象 project_feasibility_study
 *
 * @author hjxr
 * @date 2021-12-02
 */
public class ProjectFeasibilityStudy extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 项目主键-牵引字段 */
    private String projectId;

    /** 拟建规模 */
    @Excel(name = "拟建规模")
    private String proposedScale;

    /** 拟建规模单位 */
    @Excel(name = "拟建规模单位")
    private String proposedScaleUnit;

    /** 建设地点 */
    @Excel(name = "建设地点")
    private String location;

    /** 投资估算(元） */
    @Excel(name = "投资估算(元）")
    private BigDecimal estimatedInvestment;

    /** 批复时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "批复时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date approvalTime;

    /** 责任单位 */
    @Excel(name = "责任单位")
    private String responsibleDept;

    /** 调整时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "调整时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date adjustmentTime;

    /** 调整次数 */
    @Excel(name = "调整次数")
    private Long adjustmentNumber;

    public void setProjectId(String projectId)
    {
        this.projectId = projectId;
    }

    public String getProjectId()
    {
        return projectId;
    }
    public void setProposedScale(String proposedScale)
    {
        this.proposedScale = proposedScale;
    }

    public String getProposedScale()
    {
        return proposedScale;
    }
    public void setProposedScaleUnit(String proposedScaleUnit)
    {
        this.proposedScaleUnit = proposedScaleUnit;
    }

    public String getProposedScaleUnit()
    {
        return proposedScaleUnit;
    }
    public void setLocation(String location)
    {
        this.location = location;
    }

    public String getLocation()
    {
        return location;
    }
    public void setEstimatedInvestment(BigDecimal estimatedInvestment)
    {
        this.estimatedInvestment = estimatedInvestment;
    }

    public BigDecimal getEstimatedInvestment()
    {
        return estimatedInvestment;
    }
    public void setApprovalTime(Date approvalTime)
    {
        this.approvalTime = approvalTime;
    }

    public Date getApprovalTime()
    {
        return approvalTime;
    }
    public void setResponsibleDept(String responsibleDept)
    {
        this.responsibleDept = responsibleDept;
    }

    public String getResponsibleDept()
    {
        return responsibleDept;
    }
    public void setAdjustmentTime(Date adjustmentTime)
    {
        this.adjustmentTime = adjustmentTime;
    }

    public Date getAdjustmentTime()
    {
        return adjustmentTime;
    }
    public void setAdjustmentNumber(Long adjustmentNumber)
    {
        this.adjustmentNumber = adjustmentNumber;
    }

    public Long getAdjustmentNumber()
    {
        return adjustmentNumber;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("projectId", getProjectId())
            .append("proposedScale", getProposedScale())
            .append("proposedScaleUnit", getProposedScaleUnit())
            .append("location", getLocation())
            .append("estimatedInvestment", getEstimatedInvestment())
            .append("approvalTime", getApprovalTime())
            .append("responsibleDept", getResponsibleDept())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("adjustmentTime", getAdjustmentTime())
            .append("adjustmentNumber", getAdjustmentNumber())
            .toString();
    }
}
